import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import store from "./store";

// codemirror
import codemirror from "vue-codemirror";
import "codemirror/lib/codemirror.css";
import 'codemirror/theme/material.css'
import "codemirror/mode/python/python.js";
import "codemirror/addon/fold/foldcode.js";
import "codemirror/addon/fold/foldgutter.js";
import "codemirror/addon/fold/brace-fold.js";
import "codemirror/addon/fold/xml-fold.js";
import "codemirror/addon/fold/indent-fold.js";
import "codemirror/addon/fold/markdown-fold.js";
import "codemirror/addon/fold/comment-fold.js";
// markdown-it
import MarkdownItVue from "markdown-it-vue";
import "markdown-it-vue/dist/markdown-it-vue.css";
// element-ui
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);


Vue.config.productionTip = false;

// codemirror
Vue.use(codemirror);
// markdown-it
Vue.use(MarkdownItVue);

new Vue({
  router,
  store,
  render: (h) => h(App),
  beforeCreate(){
    Vue.prototype.$bus = this
  }
}).$mount("#app");
